Online search is a method of using a search engine, which executes on a computer, to search for information that is available in electronic form. Many search engines are presently available for performing online searches.
For example, some search engines, which execute on a server data processing system that is accessible over a data network, can be accessed by client-side component executing on a client data processing system, e.g., a user's computer system. A search application on a client data processing system, which can be accessed via an Application Program Interface (API), a command-line prompt, or some other integration mechanism can also be used on a client data processing system to access the server-side implementation of a search engine. For example, a search application can be a stand-alone interface for accessing the search engine.
As another example, the search application can be integrated into another application to enable the other application to access the search engine. A search bar embedded in a browser application on a client data processing system is one example of such an integrated client-side component.
Hereinafter, “search engine” refers to the server-side implementation of the application that accesses the searchable data and performs a requested search query. Hereinafter, “search application” refers to a client-side application or component, using which a user can send a search term or query to the search engine. A user of a search application can be a human, a hardware system, or a software application.
Typically, a user provides the search application a word, phrase, text snippet, or a string of alphanumeric or symbolic characters, as a search term. The search application communicates the search term to the search engine. The search engine forms a search query using the search term. The search engine accesses data, which comprises a repository of information or an index thereof stored electronically.
The search engine performs the search query on the data and obtains a result set. The result set includes data that corresponds to the search query. The search engine returns the result set to the search application. The search application provides or presents the result set to the user.
In some cases, a search engine may perform some processing of the result set before sending the result set to the search application. For example, a search engine may insert advertisements into the result set, arrange the result set in some order, such as according to the age of the results in the result set, and the like.
Presently, it is quite common to receive a result set of hundreds if not thousands of results that correspond to a search term. Even when sorted, the sheer volume of data in the result set can overwhelm the user. Often, the user has to expend time and computing resources to process the data of at least a few irrelevant or less-than-useful results to reach the data of a result that appears to be relevant to the user's intention for searching.
For example, a user may have to click a Uniform Resource Locator (URL), download the content from the website of the URL, click through or scroll past at least some of the downloaded content, to conclude that the URL did not lead to information that is useful according to the user's intentions behind the search. The user then has to repeat this sequence of operation repeatedly with other URLs in other results in the result set before finding a result that is satisfactory to the user, if any.
Some search engines return a preview of the contents of a result that is included in the result set. For example, a search engine may show a title of a result, a URL of the result, and one or two lines of text from the content at the URL as a preview. As another example, another search engine may show as a preview a thumbnail image of a website of a URL that is included in the result set. In rare cases, the user may find the information of interest in the preview, but in most cases, the previews only allow a user to quickly form an opinion about a particular result in the result set, without having to access the URL and read the content available there.
In some search engines, if a preview includes a portion of the search term, the search engines highlight that portion of the search term in the preview. This highlighting, such as by boldfacing, underlining, color-changing, or font-scaling the portion of the search term helps to draw the user's attention to the portion of the search term that caused the inclusion of the result in the result set. The drawing of the attention is also designed to aid the user in a speedy elimination of some results from consideration, and a quick evaluation of the relevance of a result to the search term.